home *** CD-ROM | disk | FTP | other *** search
/ Languguage OS 2 / Languguage OS II Version 10-94 (Knowledge Media)(1994).ISO / gnu / gas_251.zip / bin_251 / bfd / init.c < prev    next >
C/C++ Source or Header  |  1994-03-15  |  2KB  |  80 lines

  1. /* bfd initialization stuff
  2.    Copyright (C) 1990, 91, 92, 93, 94 Free Software Foundation, Inc.
  3.    Written by Steve Chamberlain of Cygnus Support.
  4.  
  5. This file is part of BFD, the Binary File Descriptor library.
  6.  
  7. This program is free software; you can redistribute it and/or modify
  8. it under the terms of the GNU General Public License as published by
  9. the Free Software Foundation; either version 2 of the License, or
  10. (at your option) any later version.
  11.  
  12. This program is distributed in the hope that it will be useful,
  13. but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  15. GNU General Public License for more details.
  16.  
  17. You should have received a copy of the GNU General Public License
  18. along with this program; if not, write to the Free Software
  19. Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
  20.  
  21. #include "bfd.h"
  22. #include "sysdep.h"
  23. #include "libbfd.h"
  24.  
  25. extern void bfd_section_init ();
  26.  
  27. static boolean initialized = false;
  28.  
  29. /*
  30. SECTION
  31.     Initialization
  32.  
  33.     These are the functions that handle initializing a BFD.
  34. */
  35.  
  36. /*
  37. FUNCTION
  38.     bfd_init
  39.  
  40. SYNOPSIS
  41.     void bfd_init(void);
  42.  
  43. DESCRIPTION
  44.     This routine must be called before any other BFD function to
  45.     initialize magical internal data structures.
  46. */
  47.  
  48. void
  49. bfd_init ()
  50. {
  51.   if (initialized == false) {
  52.     initialized = true;
  53.  
  54.     bfd_arch_init();
  55.   }
  56. }
  57.  
  58.  
  59. /*
  60. INTERNAL_FUNCTION
  61.     bfd_check_init
  62.  
  63. SYNOPSIS
  64.     void bfd_check_init(void);
  65.  
  66. DESCRIPTION
  67.     This routine is called before any other BFD function using
  68.     initialized data. It ensures that the structures have
  69.     been initialized.  Soon this function will go away, and the BFD
  70.     library will assume that <<bfd_init>> has been called.
  71. */
  72.  
  73. void
  74. bfd_check_init ()
  75. {
  76.   if (initialized == false) {
  77.     bfd_init();
  78.   }
  79. }
  80.